1. Field
The present invention relates generally to processing of multimedia data signals and, more specifically, to management of streaming digital audio and video data signals.
2. Description
Digital multimedia data signals may be communicated over a network from a signal source to a client system for viewing and listening by a user at the client site. In one scenario, a user requests the retrieval of a sequence of audio and video data signals called a stream from the signal source, which may be a server system communicating with the client system over the network. When the audio and video data signals making up the stream are received at the client, these multimedia data signals are processed to produce output data for the user in the form of sounds produced by one or more loudspeakers and images displayed on a display.
The concept of streaming multimedia includes a multimedia source sending a multimedia stream to a multimedia recipient for real-time presentation to a user. That is, streaming can be viewed as a xe2x80x9cdisplay/playxe2x80x9d model as opposed to a more traditional xe2x80x9cdownload and display/playxe2x80x9d model, where the entire stream is collected by the recipient prior to presentation. Successful streaming is based on the premise that the multimedia preparation (e.g., compression) and the transmission mechanism can feed the recipient at a rate fast enough for the multimedia stream to be presented in real-time. Streaming may involve buffering a small amount of the stream prior to presentation, but the amount of buffering is typically small compared to the length of the entire stream. The rationale for buffering is typically to smooth out jitter inherent in network-based transmission mechanisms (e.g., packet-based transports, etc.).
One difference between xe2x80x9cstreaming multimediaxe2x80x9d and multimedia that has been downloaded (in part or in its entirety) prior to presentation is that streaming multimedia quality (for example, video clarity and frame-rate) is determined, at least in part, by the bandwidth of the transmission mechanism. For downloaded multimedia, the quality of the presentation is typically unaltered from what it had been authored as; however, the download times are affected by the bandwidth of the transmission channel. A second difference between the two models is that the download model is not workable for xe2x80x9clivexe2x80x9d content. In a display/play model of a digital multimedia streaming system, the size of the displayed images and the overall quality of the audio and video presented to the user are limited at least in part by the bandwidth of the communications path between the signal source and the client. In some systems, a sufficient amount of audio and video data signals is received to display full-motion video and concurrent audio to the user in a real-time (or streaming) mode, although the size and quality of the displayed image may be inadequate or undesirable for some uses. If the bandwidth of the communications path could be expanded, then a larger image, a clearer image, or a smoother set of images could be presented to the user. However, in most systems, the communications path between the signal source and the client is a fixed, relatively low bandwidth communication channel having at least one bottleneck. For example, when the network is the Internet and the client is a computer system employing a modem with a purported maximum bandwidth of 56K bytes per second (bps), the modem may serve as an impediment to providing a clearer or larger display of the video images.
This limitation of a fixed bandwidth communications path is particularly acute when the client desires to retrieve streams from more than one signal source at a time. In some situations, a user may desire to display video data signals from at least two signal sources on a single display, with the data from each source being represented on a portion of the display. The display of two independent video streams, each in a portion of a display, is widely used for analog television signals as the xe2x80x9cpicture-in-a-picturexe2x80x9d (PIP) feature of many analog televisions. However, for analog televisions, each video stream is received by a separate tuner on a different communications path and therefore the bandwidth of a single communications path for the dual sources is not fixed.
Simultaneous reception of two or more streams over a fixed, low bandwidth, digital communications path may result in bandwidth contention between the streams. Without some way to prioritize the client""s reception of the streams, the streams may contend for the available, limited bandwidth. The data packets from the streams are thus received in a non-deterministic manner. The result may be that the reception and processing of the streams is degraded to the point where none of the streams conveys any significant visual information to the user. Typically, the user cannot select which stream to receive priority in the communications path to ensure that at least one of the streams conveys enough data signals for a suitable display to the user. In addition, reception of audio data signals for a stream may be degraded such that the client""s audio output becomes intermittent and undesirable for the user.
What is needed is an approach or technique that addresses the foregoing problems.
An embodiment of the present invention is a method of receiving digital multimedia data signals from multiple sources over a fixed bandwidth communications path using multiple layers of a stream. The method includes subscribing to a first layer of a first source, a first layer of a second source, and a second layer of the first source. The method further includes receiving data signals corresponding to the subscribed layers of the first and second sources in the stream over the fixed bandwidth communications path, and producing output signals corresponding to the received data signals for the first source and the second source.
Another embodiment of the present invention is a method of receiving multiple, independent digital multimedia streams over a fixed bandwidth communications path. The method includes subscribing to first and second streams, the first stream corresponding to a first multimedia content and the second stream corresponding to a second multimedia content. The method further includes concurrently receiving data signals corresponding to the streams over the fixed bandwidth communications path, and producing output signals corresponding to the received data signals for the first stream and for the second stream.